mirror of
https://github.com/tendermint/tendermint.git
synced 2026-02-12 14:51:13 +00:00
Compare commits
4 Commits
wb/rename-
...
e2e-limite
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9bba1c6aa2 | ||
|
|
26af88ac67 | ||
|
|
919ee5ed17 | ||
|
|
4b75f2eedc |
4
.github/workflows/e2e-nightly-master.yml
vendored
4
.github/workflows/e2e-nightly-master.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
group: ['00', '01', '02', '03']
|
||||
group: ['00', '01', '02']
|
||||
runs-on: ubuntu-latest
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
- name: Generate testnets
|
||||
working-directory: test/e2e
|
||||
# When changing -g, also change the matrix groups above
|
||||
run: ./build/generator -g 4 -d networks/nightly/
|
||||
run: ./build/generator -g 3 -d networks/nightly/
|
||||
|
||||
- name: Run ${{ matrix.p2p }} p2p testnets
|
||||
working-directory: test/e2e
|
||||
|
||||
@@ -14,7 +14,7 @@ var (
|
||||
// testnetCombinations defines global testnet options, where we generate a
|
||||
// separate testnet for each combination (Cartesian product) of options.
|
||||
testnetCombinations = map[string][]interface{}{
|
||||
"topology": {"single", "quad", "large"},
|
||||
"topology": {"quad", "large"},
|
||||
"queueType": {"priority"}, // "fifo"
|
||||
"initialHeight": {0, 1000},
|
||||
"initialState": {
|
||||
@@ -26,32 +26,32 @@ var (
|
||||
|
||||
// The following specify randomly chosen values for testnet nodes.
|
||||
nodeDatabases = weightedChoice{
|
||||
"goleveldb": 35,
|
||||
"badgerdb": 35,
|
||||
"boltdb": 15,
|
||||
"rocksdb": 10,
|
||||
"cleveldb": 5,
|
||||
// "goleveldb": 35,
|
||||
"badgerdb": 35,
|
||||
// "boltdb": 15,
|
||||
// "rocksdb": 10,
|
||||
// "cleveldb": 5,
|
||||
}
|
||||
nodeABCIProtocols = weightedChoice{
|
||||
"builtin": 50,
|
||||
"tcp": 20,
|
||||
"grpc": 20,
|
||||
"unix": 10,
|
||||
// "tcp": 20,
|
||||
// "grpc": 20,
|
||||
// "unix": 10,
|
||||
}
|
||||
nodePrivvalProtocols = weightedChoice{
|
||||
"file": 50,
|
||||
"grpc": 20,
|
||||
"tcp": 20,
|
||||
"unix": 10,
|
||||
// "grpc": 20,
|
||||
// "tcp": 20,
|
||||
// "unix": 10,
|
||||
}
|
||||
nodeMempools = weightedChoice{
|
||||
"v0": 20,
|
||||
// "v0": 20,
|
||||
"v1": 80,
|
||||
}
|
||||
nodeStateSyncs = weightedChoice{
|
||||
e2e.StateSyncDisabled: 10,
|
||||
e2e.StateSyncP2P: 45,
|
||||
e2e.StateSyncRPC: 45,
|
||||
// e2e.StateSyncDisabled: 10,
|
||||
e2e.StateSyncP2P: 45,
|
||||
e2e.StateSyncRPC: 45,
|
||||
}
|
||||
nodePersistIntervals = uniformChoice{0, 1, 5}
|
||||
nodeSnapshotIntervals = uniformChoice{0, 5}
|
||||
@@ -66,9 +66,9 @@ var (
|
||||
"kill": 0.1,
|
||||
"restart": 0.1,
|
||||
}
|
||||
evidence = uniformChoice{0, 1, 10}
|
||||
evidence = uniformChoice{0} // , 1, 10
|
||||
txSize = uniformChoice{1024, 4096} // either 1kb or 4kb
|
||||
ipv6 = uniformChoice{false, true}
|
||||
ipv6 = uniformChoice{false} // , true
|
||||
keyType = uniformChoice{types.ABCIPubKeyTypeEd25519, types.ABCIPubKeyTypeSecp256k1}
|
||||
)
|
||||
|
||||
@@ -128,7 +128,7 @@ func generateTestnet(r *rand.Rand, opt map[string]interface{}) (e2e.Manifest, er
|
||||
numValidators = 4
|
||||
case "large":
|
||||
// FIXME Networks are kept small since large ones use too much CPU.
|
||||
numSeeds = r.Intn(1)
|
||||
numSeeds = 0 // r.Intn(1)
|
||||
numLightClients = r.Intn(2)
|
||||
numValidators = 4 + r.Intn(4)
|
||||
numFulls = r.Intn(4)
|
||||
@@ -147,14 +147,14 @@ func generateTestnet(r *rand.Rand, opt map[string]interface{}) (e2e.Manifest, er
|
||||
// Next, we generate validators. We make sure a BFT quorum of validators start
|
||||
// at the initial height, and that we have two archive nodes. We also set up
|
||||
// the initial validator set, and validator set updates for delayed nodes.
|
||||
nextStartAt := manifest.InitialHeight + 5
|
||||
// nextStartAt := 0 // manifest.InitialHeight + 5
|
||||
quorum := numValidators*2/3 + 1
|
||||
for i := 1; i <= numValidators; i++ {
|
||||
startAt := int64(0)
|
||||
if i > quorum && numSyncingNodes < 2 && r.Float64() >= 0.25 {
|
||||
numSyncingNodes++
|
||||
startAt = nextStartAt
|
||||
nextStartAt += 5
|
||||
// numSyncingNodes++
|
||||
// startAt = nextStartAt
|
||||
// nextStartAt += 5
|
||||
}
|
||||
name := fmt.Sprintf("validator%02d", i)
|
||||
node := generateNode(r, manifest, e2e.ModeValidator, startAt, i <= 2)
|
||||
@@ -184,9 +184,9 @@ func generateTestnet(r *rand.Rand, opt map[string]interface{}) (e2e.Manifest, er
|
||||
for i := 1; i <= numFulls; i++ {
|
||||
startAt := int64(0)
|
||||
if numSyncingNodes < 2 && r.Float64() >= 0.5 {
|
||||
numSyncingNodes++
|
||||
startAt = nextStartAt
|
||||
nextStartAt += 5
|
||||
// numSyncingNodes++
|
||||
// startAt = nextStartAt
|
||||
// nextStartAt += 5
|
||||
}
|
||||
node := generateNode(r, manifest, e2e.ModeFull, startAt, false)
|
||||
|
||||
@@ -250,9 +250,11 @@ func generateTestnet(r *rand.Rand, opt map[string]interface{}) (e2e.Manifest, er
|
||||
|
||||
// lastly, set up the light clients
|
||||
for i := 1; i <= numLightClients; i++ {
|
||||
startAt := manifest.InitialHeight + 5
|
||||
startAt := manifest.InitialHeight /// + 5
|
||||
|
||||
node := generateLightNode(r, startAt+(5*int64(i)), lightProviders)
|
||||
node := generateLightNode(r,
|
||||
startAt, // +(5*int64(i)),
|
||||
lightProviders)
|
||||
|
||||
manifest.Nodes[fmt.Sprintf("light%02d", i)] = node
|
||||
|
||||
|
||||
Reference in New Issue
Block a user