Skip to content
Closed
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
3 changes: 3 additions & 0 deletions app/abci.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@ package app

import (
"context"
"time"

sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/sei-protocol/sei-chain/utils/metrics"
abci "github.com/tendermint/tendermint/abci/types"
"go.opentelemetry.io/otel/attribute"
)
Expand Down Expand Up @@ -31,6 +33,7 @@ func (app *App) CheckTx(ctx context.Context, req *abci.RequestCheckTx) (*abci.Re
}

func (app *App) DeliverTx(ctx sdk.Context, req abci.RequestDeliverTx) abci.ResponseDeliverTx {
defer metrics.MeasureDeliverTxDuration(time.Now())
// tracectx, span := (*app.tracingInfo.Tracer).Start(app.tracingInfo.TracerContext, "DeliverTx")
// oldCtx := app.tracingInfo.TracerContext
// app.tracingInfo.TracerContext = tracectx
Expand Down
32 changes: 29 additions & 3 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import (

appparams "github.com/sei-protocol/sei-chain/app/params"
"github.com/sei-protocol/sei-chain/utils"
"github.com/sei-protocol/sei-chain/utils/metrics"
"github.com/sei-protocol/sei-chain/wasmbinding"

wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper"
Expand Down Expand Up @@ -885,9 +886,12 @@ func (app *App) BuildDependencyDag(ctx sdk.Context, txs [][]byte) (*Dag, error)
}
msgs := tx.GetMsgs()
for messageIndex, msg := range msgs {
msgDependencies := app.AccessControlKeeper.GetResourceDependencyMapping(ctx, acltypes.GenerateMessageKey(msg))
msgKey := acltypes.GenerateMessageKey(msg)
msgDependencies := app.AccessControlKeeper.GetResourceDependencyMapping(ctx, msgKey)
ctx.Logger().Info(fmt.Sprintf("BuildDependencyDag:Getting Dependencies for %s", msgKey))
for _, accessOp := range msgDependencies.GetAccessOps() {
// make a new node in the dependency dag
ctx.Logger().Info(fmt.Sprintf("BuildDependencyDag:Get AccessOps Dependencies for %s", msgKey))
dependencyDag.AddNodeBuildDependency(messageIndex, txIndex, accessOp)
}
}
Expand Down Expand Up @@ -933,6 +937,7 @@ func (app *App) DeliverTxWithResult(ctx sdk.Context, tx []byte) *abci.ExecTxResu
deliverTxResp := app.DeliverTx(ctx, abci.RequestDeliverTx{
Tx: tx,
})
ctx.Logger().Info(fmt.Sprintf("DeliverTxWithResult:: Delievered TX"))
return &abci.ExecTxResult{
Code: deliverTxResp.Code,
Data: deliverTxResp.Data,
Expand All @@ -950,6 +955,7 @@ func (app *App) ProcessBlockSynchronous(ctx sdk.Context, txs [][]byte) []*abci.E
for _, tx := range txs {
txResults = append(txResults, app.DeliverTxWithResult(ctx, tx))
}
metrics.IncrTransactionProcessTypeCounter(metrics.SYNCHRONOUS)
return txResults
}

Expand All @@ -959,6 +965,7 @@ func getChannelsFromSignalMapping(signalMapping MessageCompletionSignalMapping)
for messageIndex, accessOperationsToSignal := range signalMapping {
for accessOperation, completionSignals := range accessOperationsToSignal {
var channels []chan interface{}
channelsMapping[messageIndex] = make(sdkacltypes.AccessOpsChannelMapping)
for _, completionSignal := range completionSignals {
channels = append(channels, completionSignal.Channel)
}
Expand All @@ -983,12 +990,20 @@ func (app *App) ProcessTxConcurrent(
txBlockingSignalsMap MessageCompletionSignalMapping,
) {
defer wg.Done()
ctx.Logger().Info(fmt.Sprintf("ProcessTxConcurrent:: Processing: %d", txIndex))

// Store the Channels in the Context Object for each transaction
ctx.WithTxBlockingChannels(getChannelsFromSignalMapping(txBlockingSignalsMap))
ctx.WithTxCompletionChannels(getChannelsFromSignalMapping(txCompletionSignalingMap))

// Deliver the transaction and store the result in the channel
resultChan <- ChannelResult{txIndex, app.DeliverTxWithResult(ctx, txBytes)}
ctx.Logger().Info(fmt.Sprintf("ProcessTxConcurrent:: Waiting for: %d", txIndex))
results := app.DeliverTxWithResult(ctx, txBytes)
ctx.Logger().Info(fmt.Sprintf("Got Results: %d", txIndex))
channelResult := ChannelResult{txIndex, results}
resultChan <- channelResult
ctx.Logger().Info(fmt.Sprintf("ProcessTxConcurrent:: Sent to channel: %d", txIndex))
metrics.IncrTransactionProcessTypeCounter(metrics.CONCURRENT)
}

func (app *App) ProcessBlockConcurrent(
Expand All @@ -1003,9 +1018,17 @@ func (app *App) ProcessBlockConcurrent(

// If there's no transactions then return empty results
if len(txs) == 0 {
ctx.Logger().Info("ProcessBlockConcurrent:: No Transactions!")
return txResults
}

ctx.Logger().Info(fmt.Sprintf("ProcessBlockConcurrent:: Got transactions: %d", len(txs)))
go func() {
waitGroup.Wait()
ctx.Logger().Info("Closing Channels!")
close(resultChan)
}()

// For each transaction, start goroutine and deliver TX
for txIndex, txBytes := range txs {
waitGroup.Add(1)
Expand All @@ -1021,7 +1044,8 @@ func (app *App) ProcessBlockConcurrent(
}

// Waits for all the transactions to complete
waitGroup.Wait()
// ctx.Logger().Info("ProcessBlockConcurrent:: Waiting for TXs!")
// waitGroup.Wait()

// Gather Results and store it based on txIndex
// Concurrent results may be in different order than the original txIndex
Expand All @@ -1030,6 +1054,7 @@ func (app *App) ProcessBlockConcurrent(
txResultsMap[result.txIndex] = result.result
}

ctx.Logger().Info("ProcessBlockConcurrent:: Gathered Results!")
// Gather Results and store in array based on txIndex to preserve ordering
for txIndex := range txs {
txResults = append(txResults, txResultsMap[txIndex])
Expand Down Expand Up @@ -1089,6 +1114,7 @@ func (app *App) ProcessBlock(ctx sdk.Context, txs [][]byte, req BlockProcessRequ
txResults = app.ProcessBlockSynchronous(ctx, txs)
}
} else {
ctx.Logger().Info("ProcessBlock:: Building Mapping")
completionSignalingMap, blockingSignalsMap := dependencyDag.BuildCompletionSignalMaps()
txResults = app.ProcessBlockConcurrent(ctx, txs, completionSignalingMap, blockingSignalsMap)
}
Expand Down
8 changes: 8 additions & 0 deletions app/graph.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (

acltypes "github.com/cosmos/cosmos-sdk/types/accesscontrol"
mapset "github.com/deckarep/golang-set"
"github.com/k0kubun/pp"
)

type DagNodeID int
Expand Down Expand Up @@ -319,6 +320,13 @@ func (dag *Dag) BuildCompletionSignalMaps() (
}
}
}
println("DAG")
pp.Println(dag)
println("completionSignalingMap")
pp.Println(completionSignalingMap)
println("blockingSignalsMap")
pp.Println(blockingSignalsMap)

return completionSignalingMap, blockingSignalsMap
}

Expand Down
6 changes: 4 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@ require (
github.com/cosmos/cosmos-sdk v0.45.4
github.com/cosmos/go-bip39 v1.0.0
github.com/cosmos/ibc-go/v3 v3.0.0
github.com/deckarep/golang-set v1.8.0
github.com/deckarep/golang-set v0.0.0-20180603214616-504e848d77ea
github.com/gogo/protobuf v1.3.3
github.com/golang/protobuf v1.5.2
github.com/gorilla/mux v1.8.0
github.com/grpc-ecosystem/grpc-gateway v1.16.0
github.com/k0kubun/pp v3.0.1+incompatible
github.com/pkg/errors v0.9.1
github.com/regen-network/cosmos-proto v0.3.1
github.com/spf13/cast v1.5.0
Expand Down Expand Up @@ -89,6 +90,7 @@ require (
github.com/lib/pq v1.10.6 // indirect
github.com/libp2p/go-buffer-pool v0.0.2 // indirect
github.com/magiconair/properties v1.8.6 // indirect
github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
Expand Down Expand Up @@ -131,7 +133,7 @@ require (
)

replace (
github.com/cosmos/cosmos-sdk => github.com/sei-protocol/sei-cosmos v0.1.73
github.com/cosmos/cosmos-sdk => github.com/sei-protocol/sei-cosmos v0.1.74
github.com/gogo/protobuf => github.com/regen-network/protobuf v1.3.3-alpha.regen.1
github.com/keybase/go-keychain => github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4
github.com/tendermint/tendermint => github.com/sei-protocol/sei-tendermint v0.1.56
Expand Down
11 changes: 7 additions & 4 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -290,9 +290,8 @@ github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/deckarep/golang-set v0.0.0-20180603214616-504e848d77ea h1:j4317fAZh7X6GqbFowYdYdI0L9bwxL07jyPZIdepyZ0=
github.com/deckarep/golang-set v0.0.0-20180603214616-504e848d77ea/go.mod h1:93vsz/8Wt4joVM7c2AVqh+YRMiUSc14yDtF28KmMOgQ=
github.com/deckarep/golang-set v1.8.0 h1:sk9/l/KqpunDwP7pSjUg0keiOOLEnOBHzykLrsPppp4=
github.com/deckarep/golang-set v1.8.0/go.mod h1:5nI87KwE7wgsBU1F4GKAw2Qod7p5kyS383rP6+o6qqo=
github.com/decred/dcrd/lru v1.0.0/go.mod h1:mxKOwFd7lFjN2GZYsiz/ecgqR6kkYAl+0pz0tEMk218=
github.com/denis-tingaikin/go-header v0.4.3/go.mod h1:0wOCWuN71D5qIgE2nz9KrKmuYBAC2Mra5RassOIQ2/c=
github.com/denisenkom/go-mssqldb v0.12.0/go.mod h1:iiK0YP1ZeepvmBQk/QpLEhhTNJgfzrpArPY/aFvc9yU=
Expand Down Expand Up @@ -733,7 +732,10 @@ github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7V
github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM=
github.com/julz/importas v0.1.0/go.mod h1:oSFU2R4XK/P7kNBrnL/FEQlDGN1/6WoxXEjSSXO0DV0=
github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes=
github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88 h1:uC1QfSlInpQF+M0ao65imhwqKnz3Q2z/d8PWZRMQvDM=
github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88/go.mod h1:3w7q1U84EfirKl04SVQ/s7nPm1ZPhiXd34z40TNz36k=
github.com/k0kubun/pp v3.0.1+incompatible h1:3tqvf7QgUnZ5tXO6pNAZlrvHgl6DvifjDrd9g2S9Z40=
github.com/k0kubun/pp v3.0.1+incompatible/go.mod h1:GWse8YhT0p8pT4ir3ZgBbfZild3tgzSScAn6HmfYukg=
github.com/karalabe/usb v0.0.0-20190919080040-51dc0efba356/go.mod h1:Od972xHfMJowv7NGVDiWVxk2zxnWgjLlJzE+F4F7AGU=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/errcheck v1.6.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
Expand Down Expand Up @@ -799,6 +801,7 @@ github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVc
github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40=
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
github.com/mattn/go-ieproxy v0.0.0-20190610004146-91bb50d98149/go.mod h1:31jz6HNzdxOmlERGGEc4v/dMssOfmp2p5bT/okiKFFc=
github.com/mattn/go-ieproxy v0.0.0-20190702010315-6dee0af9227d/go.mod h1:31jz6HNzdxOmlERGGEc4v/dMssOfmp2p5bT/okiKFFc=
Expand Down Expand Up @@ -1097,8 +1100,8 @@ github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg
github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo=
github.com/securego/gosec/v2 v2.11.0/go.mod h1:SX8bptShuG8reGC0XS09+a4H2BoWSJi+fscA+Pulbpo=
github.com/segmentio/fasthash v1.0.3/go.mod h1:waKX8l2N8yckOgmSsXJi7x1ZfdKZ4x7KRMzBtS3oedY=
github.com/sei-protocol/sei-cosmos v0.1.73 h1:yFG32zV8BGCbsS/AQYUNc2ZFWWZ2lXv505Gkf6vauKE=
github.com/sei-protocol/sei-cosmos v0.1.73/go.mod h1:Oaj7toqHCkwEEb+sDIWxtfTkPZxOpMXBXDMvIIqUjpw=
github.com/sei-protocol/sei-cosmos v0.1.74 h1:issmbjmVpD/HMF4OO+0rJLwGWgONsgfCQGxn52ANsy8=
github.com/sei-protocol/sei-cosmos v0.1.74/go.mod h1:Oaj7toqHCkwEEb+sDIWxtfTkPZxOpMXBXDMvIIqUjpw=
github.com/sei-protocol/sei-tendermint v0.1.56 h1:iRVhiIetj+GSwpBzaR9lqgvmgcOqmShfACS6x3tuBIw=
github.com/sei-protocol/sei-tendermint v0.1.56/go.mod h1:Olwbjyagrpoxj5DAUhHxMTWDVEfQ3FYdpypaJ3+6Hs8=
github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM=
Expand Down
10 changes: 5 additions & 5 deletions loadtest/contracts/deploy_ten_contracts.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ echo
cd $seihome/loadtest/contracts/mars && cargo build && docker run --rm -v "$(pwd)":/code \
--mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
cosmwasm/rust-optimizer:0.12.5
cosmwasm/rust-optimizer:0.12.6

cd $seihome/loadtest/contracts/saturn && cargo build && docker run --rm -v "$(pwd)":/code \
--mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
cosmwasm/rust-optimizer:0.12.5
cosmwasm/rust-optimizer:0.12.6

cd $seihome/loadtest/contracts/venus && cargo build && docker run --rm -v "$(pwd)":/code \
--mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
cosmwasm/rust-optimizer:0.12.5
cosmwasm/rust-optimizer:0.12.6

# Deploy all contracts
echo "Deploying contracts..."
Expand Down Expand Up @@ -70,7 +70,7 @@ marsaddr4=$(python3 parser.py contract_address $marsinsres4)
echo "Registering..."

valaddr=$(printf "12345678\n" | $seidbin keys show $(printf "12345678\n" | $seidbin keys show node_admin --output json | jq -r .address) --bech=val --output json | jq -r '.address')
printf "12345678\n" | $seidbin tx staking delegate $valaddr 1000000000usei --from=$keyname --chain-id=$chainid -b block -y
printf "12345678\n" | $seidbin tx staking delegate $valaddr 1000000000usei --from=$keyname --chain-id=$chainid -—fees 2000usei -b block -y

printf "12345678\n" | $seidbin tx dex register-contract $marsaddr $marsid false true -y --from=$keyname --chain-id=$chainid --fees=10000000usei --gas=500000 --broadcast-mode=block
printf "12345678\n" | $seidbin tx dex register-contract $saturnaddr $saturnid false true -y --from=$keyname --chain-id=$chainid --fees=10000000usei --gas=500000 --broadcast-mode=block
Expand Down Expand Up @@ -145,7 +145,7 @@ printf "12345678\n" | $seidbin tx gov vote $marsproposalid4 yes -y --from=$keyna

sleep 90

printf "12345678\n" | $seidbin tx staking unbond $valaddr 1000000000usei --from=$keyname --chain-id=$chainid -b block -y
printf "12345678\n" | $seidbin tx staking unbond $valaddr 1000000000usei --from=$keyname --chain-id=$chainid -b block -y -—fees 2000usei

echo $marsaddr
echo $saturnaddr
Expand Down
29 changes: 14 additions & 15 deletions loadtest/scripts/populate_genesis_accounts.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
import json
import os
import multiprocessing
import subprocess
import sys
import threading
import time

PARALLEISM=32
LOCK=threading.Lock()

def add_genesis_account(account_name, local=False):
def add_genesis_account(account_name, lock, local=False):
if local:
add_key_cmd = f"yes | ~/go/bin/seid keys add {account_name} --keyring-backend test"
else:
Expand Down Expand Up @@ -41,7 +39,7 @@ def add_genesis_account(account_name, local=False):
sleep_time = 1
while not success and retry_counter > 0:
try:
with LOCK:
with lock:
subprocess.check_call(
[add_account_cmd],
shell=True,
Expand All @@ -54,25 +52,26 @@ def add_genesis_account(account_name, local=False):
time.sleep(sleep_time)


def bulk_create_genesis_accounts(number_of_accounts, start_idx, is_local=False):
def bulk_create_genesis_accounts(number_of_accounts, start_idx, lock, is_local=False):
for i in range(start_idx, start_idx + number_of_accounts):
print(f"Creating account {i}")
add_genesis_account(f"ta{i}", is_local)
add_genesis_account(f"ta{i}", lock, is_local)

def main():
args = sys.argv[1:]
number_of_accounts = int(args[0])
is_local = False
if len(args) > 1 and args[1] == "loc":
is_local = True
num_processes = number_of_accounts // PARALLEISM
processes = []
for i in range(0, number_of_accounts, num_processes):
processes.append(multiprocessing.Process(target=bulk_create_genesis_accounts, args=(num_processes, i, is_local)))
for p in processes:
p.start()
for p in processes:
p.join()
num_threads = number_of_accounts // PARALLEISM
threads = []
lock=threading.Lock()
for i in range(0, number_of_accounts, num_threads):
threads.append(threading.Thread(target=bulk_create_genesis_accounts, args=(num_threads, i, lock, is_local)))
for t in threads:
t.start()
for t in threads:
t.join()

if __name__ == "__main__":
main()
main()
60 changes: 26 additions & 34 deletions scripts/old_initialize_local.sh
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,43 +1,35 @@
#!/bin/bash

echo -n OS Password:
read -s password
echo
echo -n Key Name:
read keyname
echo
echo -n Number of Test Accounts:
read numtestaccount
echo

docker stop jaeger
docker rm jaeger
docker run -d --name jaeger \
-e COLLECTOR_ZIPKIN_HOST_PORT=:9411 \
-p 5775:5775/udp \
-p 6831:6831/udp \
-p 6832:6832/udp \
-p 5778:5778 \
-p 16686:16686 \
-p 14250:14250 \
-p 14268:14268 \
-p 14269:14269 \
-p 9411:9411 \
jaegertracing/all-in-one:1.33
#!/bin/bash

keyname=admin
#docker stop jaeger
#docker rm jaeger
#docker run -d --name jaeger \
# -e COLLECTOR_ZIPKIN_HOST_PORT=:9411 \
# -p 5775:5775/udp \
# -p 6831:6831/udp \
# -p 6832:6832/udp \
# -p 5778:5778 \
# -p 16686:16686 \
# -p 14250:14250 \
# -p 14268:14268 \
# -p 14269:14269 \
# -p 9411:9411 \
# jaegertracing/all-in-one:1.33

rm -rf ~/.sei
echo "Building..."
make install
echo $password | sudo -S rm -r ~/.sei/
echo $password | sudo -S rm -r ~/test_accounts/
#echo $password | sudo -S rm -r ~/.sei/
#echo $password | sudo -S rm -r ~/test_accounts/
~/go/bin/seid init demo --chain-id sei-chain
yes | ~/go/bin/seid keys add $keyname
yes | ~/go/bin/seid keys add faucet
printf '12345678\n' | ~/go/bin/seid add-genesis-account $(~/go/bin/seid keys show $keyname -a) 100000000000000000000usei,100000000000000000000uusdc,100000000000000000000uatom
printf '12345678\n' | ~/go/bin/seid add-genesis-account $(~/go/bin/seid keys show faucet -a) 100000000000000000000usei,100000000000000000000uusdc,100000000000000000000uatom
python3 ./loadtest/scripts/populate_genesis_accounts.py $numtestaccount loc
printf '12345678\n' | ~/go/bin/seid gentx $keyname 70000000000000000000usei --chain-id sei-chain
sed -i 's/mode = "full"/mode = "validator"/g' $HOME/.sei/config/config.toml
sed -i 's/indexer = \["null"\]/indexer = \["kv"\]/g' $HOME/.sei/config/config.toml
~/go/bin/seid keys add $keyname --keyring-backend test
#yes | ~/go/bin/seid keys add faucet
~/go/bin/seid add-genesis-account $(~/go/bin/seid keys show $keyname -a --keyring-backend test) 100000000000000000000usei,100000000000000000000uusdc,100000000000000000000uatom
~/go/bin/seid gentx $keyname 70000000000000000000usei --chain-id sei-chain --keyring-backend test
sed -i '' 's/mode = "full"/mode = "validator"/g' $HOME/.sei/config/config.toml
sed -i '' 's/indexer = \["null"\]/indexer = \["kv"\]/g' $HOME/.sei/config/config.toml
KEY=$(jq '.pub_key' ~/.sei/config/priv_validator_key.json -c)
jq '.validators = [{}]' ~/.sei/config/genesis.json > ~/.sei/config/tmp_genesis.json
jq '.validators[0] += {"power":"70000000000000"}' ~/.sei/config/tmp_genesis.json > ~/.sei/config/tmp_genesis_2.json
Expand Down
Loading