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

[aptos-workspace-server] various fixes and improvements #15571

Merged
merged 3 commits into from
Jan 9, 2025

Conversation

vgao1996
Copy link
Contributor

@vgao1996 vgao1996 commented Dec 12, 2024

This PR implements several fixes and improvements to aptos-workspace-server:

  • Shared Docker Network:
    • Instead of creating a new Docker network for each instance, we now use a shared network (aptos-workspace).
    • This helps avoid hitting Docker's default network limit (30 networks per host).
  • Error Propagation Fixes:
    • Fixed issues with error propagation so we can know why services actually fail
  • Automatic Docker Image Pulling:
    • Docker images are now automatically pulled if they do not already exist locally.
  • Shared Docker Client Initialization:
    • All docker operations now await a single shared future to initialize the Docker client, rather than creating separate instances.
  • Timeout:
    • Automatically initiates the shutdown sequence when a timeout is reached. This gives us a chance to tear down the server in case the front-end is not responding, hopefully avoiding slowing down the user's computer semi-permanently.

@vgao1996 vgao1996 requested review from banool and 0xmaayan December 12, 2024 02:40
Copy link

trunk-io bot commented Dec 12, 2024

⏱️ 51m total CI duration on this PR
Job Cumulative Duration Recent Runs
rust-move-tests 13m 🟩
rust-move-tests 13m 🟩
rust-move-tests 13m
rust-cargo-deny 5m 🟩🟩🟩
check-dynamic-deps 4m 🟩🟩🟩🟩
semgrep/ci 1m 🟩🟩🟩🟩
general-lints 1m 🟩🟩🟩
file_change_determinator 40s 🟩🟩🟩
permission-check 12s 🟩🟩🟩🟩
permission-check 11s 🟩🟩🟩🟩
rust-move-tests 1s

settingsfeedbackdocs ⋅ learn more about trunk.io

@vgao1996 vgao1996 force-pushed the aws-03 branch 2 times, most recently from 1b36174 to 3735b77 Compare December 17, 2024 11:09
@vgao1996 vgao1996 changed the title [aptos-workspace-server] fix error propagation + pull docker images + use only 1 docker network [aptos-workspace-server] various fixes and improvements Dec 17, 2024
@vgao1996 vgao1996 marked this pull request as ready for review December 17, 2024 21:38
future::Future,
net::{IpAddr, Ipv4Addr},
sync::Arc,
};

/// An wrapper to ensure propagation of chain of errors.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit

Suggested change
/// An wrapper to ensure propagation of chain of errors.
/// A wrapper to ensure propagation of chain of errors.

Comment on lines +204 to +205
#[arg(long, default_value_t = 1800)]
timeout: u64,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A comment and maybe better naming could be nice here. My first thought was that this would be a startup or shutdown timeout, but it really seems like a "max lifespan".

I don't fully know exactly how you use workspace, but I suppose there is a good reason that we always do this, vs making it optional?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also it'd be good to suffix whatever name we choose with _secs

bollard::errors::Error::DockerResponseServerError {
status_code: 409, ..
} => {
println!("Docker network {} already exists, not creating it", name);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice.


handle
.await
.map_err(|err| anyhow!("failed to join task handle: {}", err))?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
.map_err(|err| anyhow!("failed to join task handle: {}", err))?
.map_err(|err| anyhow!("failed to join task handle: {:#}", err))?

I think this is the best way to get the most context? Not 100% sure though.

},
Err(_err) => {
println!(
"Docker image {} does not exist. Pulling image..",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tiny nit

Suggested change
"Docker image {} does not exist. Pulling image..",
"Docker image {} does not exist. Pulling image...",

@vgao1996 vgao1996 enabled auto-merge (squash) January 7, 2025 21:22

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Jan 7, 2025

❌ Forge suite framework_upgrade failure on 6593fb81261f25490ffddc2252a861c994234c2a ==> 3735b7749d0b6a9906096824bafd1a0b574aa258

Compatibility test results for 6593fb81261f25490ffddc2252a861c994234c2a ==> 3735b7749d0b6a9906096824bafd1a0b574aa258 (PR)
Upgrade the nodes to version: 3735b7749d0b6a9906096824bafd1a0b574aa258
framework_upgrade::framework-upgrade::full-framework-upgrade : committed: 1535.29 txn/s, submitted: 1538.37 txn/s, failed submission: 3.09 txn/s, expired: 3.09 txn/s, latency: 1960.94 ms, (p50: 1800 ms, p70: 2100, p90: 2400 ms, p99: 3600 ms), latency samples: 139320
Test Failed: API error: Unknown error Transaction committed on chain, but failed execution: Move abort in 0x1::gas_schedule: EINVALID_GAS_FEATURE_VERSION(0x10002): 

Stack backtrace:
   0: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.89/src/error.rs:564:25
   1: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/result.rs:1964:27
   2: aptos_release_builder::validate::NetworkConfig::execute_proposal::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:342:9
   3: aptos_release_builder::validate::NetworkConfig::submit_and_execute_multi_step_proposal::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:116:64
   4: aptos_release_builder::validate::execute_release::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:412:22
   5: aptos_release_builder::validate::validate_config_and_generate_release::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:475:6
   6: aptos_release_builder::validate::validate_config::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:461:80
   7: <aptos_testcases::framework_upgrade::FrameworkUpgrade as aptos_forge::interface::network::NetworkTest>::run::{{closure}}
             at ./testsuite/testcases/src/framework_upgrade.rs:144:10
   8: <core::pin::Pin<P> as core::future::future::Future>::poll
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/future/future.rs:123:9
   9: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/park.rs:281:63
  10: tokio::runtime::coop::with_budget
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/coop.rs:107:5
  11: tokio::runtime::coop::budget
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/coop.rs:73:5
  12: tokio::runtime::park::CachedParkThread::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/park.rs:281:31
  13: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/context/blocking.rs:66:9
  14: tokio::runtime::handle::Handle::block_on_inner::{{closure}}
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:324:22
  15: tokio::runtime::context::runtime::enter_runtime
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/context/runtime.rs:65:16
  16: tokio::runtime::handle::Handle::block_on_inner
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:323:9
  17: tokio::runtime::handle::Handle::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:302:18
  18: aptos_forge::runner::Forge<F>::run
             at ./testsuite/forge/src/runner.rs:332:50
  19: forge::run_forge_with_changelog
             at ./testsuite/forge-cli/src/main.rs:428:24
  20: forge::main
             at ./testsuite/forge-cli/src/main.rs:331:21
  21: core::ops::function::FnOnce::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:250:5
  22: std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:155:18
  23: std::rt::lang_start::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:166:18
  24: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:284:13
  25: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
  26: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  27: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  28: std::rt::lang_start_internal::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:48
  29: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
  30: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  31: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  32: std::rt::lang_start_internal
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:20
  33: main
  34: __libc_start_main
  35: _start
Trailing Log Lines:
  30: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  31: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  32: std::rt::lang_start_internal
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:20
  33: main
  34: __libc_start_main
  35: _start

=== BEGIN JUNIT ===
<?xml version="1.0" encoding="UTF-8"?>
<testsuites name="forge" tests="1" failures="1" errors="0" uuid="59d6b12e-d5ed-467d-8f2d-965aa5a307b4">
    <testsuite name="local" tests="1" disabled="0" errors="0" failures="1">
        <testcase name="framework_upgrade::framework-upgrade">
            <failure message="API error: Unknown error Transaction committed on chain, but failed execution: Move abort in 0x1::gas_schedule: EINVALID_GAS_FEATURE_VERSION(0x10002): 

Stack backtrace:
   0: anyhow::error::&lt;impl core::convert::From&lt;E&gt; for anyhow::Error&gt;::from
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.89/src/error.rs:564:25
   1: &lt;core::result::Result&lt;T,F&gt; as core::ops::try_trait::FromResidual&lt;core::result::Result&lt;core::convert::Infallible,E&gt;&gt;&gt;::from_residual
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/result.rs:1964:27
   2: aptos_release_builder::validate::NetworkConfig::execute_proposal::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:342:9
   3: aptos_release_builder::validate::NetworkConfig::submit_and_execute_multi_step_proposal::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:116:64
   4: aptos_release_builder::validate::execute_release::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:412:22
   5: aptos_release_builder::validate::validate_config_and_generate_release::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:475:6
   6: aptos_release_builder::validate::validate_config::{{closure}}
             at ./aptos-move/aptos-release-builder/src/validate.rs:461:80
   7: &lt;aptos_testcases::framework_upgrade::FrameworkUpgrade as aptos_forge::interface::network::NetworkTest&gt;::run::{{closure}}
             at ./testsuite/testcases/src/framework_upgrade.rs:144:10
   8: &lt;core::pin::Pin&lt;P&gt; as core::future::future::Future&gt;::poll
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/future/future.rs:123:9
   9: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/park.rs:281:63
  10: tokio::runtime::coop::with_budget
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/coop.rs:107:5
  11: tokio::runtime::coop::budget
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/coop.rs:73:5
  12: tokio::runtime::park::CachedParkThread::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/park.rs:281:31
  13: tokio::runtime::context::blocking::BlockingRegionGuard::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/context/blocking.rs:66:9
  14: tokio::runtime::handle::Handle::block_on_inner::{{closure}}
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:324:22
  15: tokio::runtime::context::runtime::enter_runtime
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/context/runtime.rs:65:16
  16: tokio::runtime::handle::Handle::block_on_inner
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:323:9
  17: tokio::runtime::handle::Handle::block_on
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.40.0/src/runtime/handle.rs:302:18
  18: aptos_forge::runner::Forge&lt;F&gt;::run
             at ./testsuite/forge/src/runner.rs:332:50
  19: forge::run_forge_with_changelog
             at ./testsuite/forge-cli/src/main.rs:428:24
  20: forge::main
             at ./testsuite/forge-cli/src/main.rs:331:21
  21: core::ops::function::FnOnce::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:250:5
  22: std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:155:18
  23: std::rt::lang_start::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:166:18
  24: core::ops::function::impls::&lt;impl core::ops::function::FnOnce&lt;A&gt; for &amp;F&gt;::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:284:13
  25: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
  26: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  27: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  28: std::rt::lang_start_internal::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:48
  29: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
  30: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  31: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  32: std::rt::lang_start_internal
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:20
  33: main
  34: __libc_start_main
  35: _start"/>
        </testcase>
    </testsuite>
</testsuites>
=== END JUNIT ===

Swarm logs can be found here: See fgi output for more information.
{"level":"INFO","source":{"package":"aptos_forge","file":"testsuite/forge/src/backend/k8s/cluster_helper.rs:381"},"thread_name":"main","hostname":"forge-framework-upgrade-pr-15571-1736285887-6593fb81261f25490ff","timestamp":"2025-01-07T21:45:40.726426Z","message":"Deleting namespace forge-framework-upgrade-pr-15571: Some(NamespaceStatus { conditions: None, phase: Some(\"Terminating\") })"}
{"level":"INFO","source":{"package":"aptos_forge","file":"testsuite/forge/src/backend/k8s/cluster_helper.rs:398"},"thread_name":"main","hostname":"forge-framework-upgrade-pr-15571-1736285887-6593fb81261f25490ff","timestamp":"2025-01-07T21:45:40.726462Z","message":"aptos-node resources for Forge removed in namespace: forge-framework-upgrade-pr-15571"}

failures:
    framework_upgrade::framework-upgrade

test result: FAILED. 0 passed; 1 failed; 0 filtered out

Failed to run tests:
Tests Failed
Error: Tests Failed

Stack backtrace:
   0: anyhow::error::<impl anyhow::Error>::msg
             at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.89/src/error.rs:85:36
   1: aptos_forge::runner::Forge<F>::run
             at ./testsuite/forge/src/runner.rs:358:13
   2: forge::run_forge_with_changelog
             at ./testsuite/forge-cli/src/main.rs:428:24
   3: forge::main
             at ./testsuite/forge-cli/src/main.rs:331:21
   4: core::ops::function::FnOnce::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:250:5
   5: std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:155:18
   6: std::rt::lang_start::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:166:18
   7: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/ops/function.rs:284:13
   8: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
   9: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  10: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  11: std::rt::lang_start_internal::{{closure}}
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:48
  12: std::panicking::try::do_call
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:552:40
  13: std::panicking::try
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:516:19
  14: std::panic::catch_unwind
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panic.rs:146:14
  15: std::rt::lang_start_internal
             at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/rt.rs:148:20
  16: main
  17: __libc_start_main
  18: _start
Debugging output:
NAME                                   READY   STATUS      RESTARTS   AGE
aptos-node-0-validator-0               1/1     Running     0          4m37s
aptos-node-1-validator-0               1/1     Running     0          3m57s
aptos-node-2-validator-0               1/1     Running     0          6m39s
aptos-node-3-validator-0               1/1     Running     0          6m39s
forge-testnet-deployer-fw557           0/1     Completed   0          7m21s
genesis-aptos-genesis-eforge58-z6rq4   0/1     Completed   0          6m40s

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Jan 9, 2025

✅ Forge suite compat success on 6593fb81261f25490ffddc2252a861c994234c2a ==> 220496f98de2ffce211109b8b55a245d6bdf8f5b

Compatibility test results for 6593fb81261f25490ffddc2252a861c994234c2a ==> 220496f98de2ffce211109b8b55a245d6bdf8f5b (PR)
1. Check liveness of validators at old version: 6593fb81261f25490ffddc2252a861c994234c2a
compatibility::simple-validator-upgrade::liveness-check : committed: 17337.82 txn/s, latency: 1961.61 ms, (p50: 2000 ms, p70: 2100, p90: 2200 ms, p99: 3300 ms), latency samples: 574940
2. Upgrading first Validator to new version: 220496f98de2ffce211109b8b55a245d6bdf8f5b
compatibility::simple-validator-upgrade::single-validator-upgrading : committed: 7633.84 txn/s, latency: 3906.99 ms, (p50: 4500 ms, p70: 4600, p90: 4800 ms, p99: 5100 ms), latency samples: 149340
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 7966.03 txn/s, latency: 4231.91 ms, (p50: 4600 ms, p70: 4700, p90: 4900 ms, p99: 5000 ms), latency samples: 265320
3. Upgrading rest of first batch to new version: 220496f98de2ffce211109b8b55a245d6bdf8f5b
compatibility::simple-validator-upgrade::half-validator-upgrading : committed: 7747.22 txn/s, latency: 3856.88 ms, (p50: 4500 ms, p70: 4700, p90: 4800 ms, p99: 4900 ms), latency samples: 144560
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 7799.09 txn/s, latency: 4347.26 ms, (p50: 4700 ms, p70: 4800, p90: 5000 ms, p99: 5200 ms), latency samples: 259340
4. upgrading second batch to new version: 220496f98de2ffce211109b8b55a245d6bdf8f5b
compatibility::simple-validator-upgrade::rest-validator-upgrading : committed: 10116.78 txn/s, latency: 2789.56 ms, (p50: 2700 ms, p70: 3400, p90: 4200 ms, p99: 4400 ms), latency samples: 190900
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 10488.04 txn/s, latency: 3161.78 ms, (p50: 2800 ms, p70: 4100, p90: 4500 ms, p99: 4700 ms), latency samples: 342500
5. check swarm health
Compatibility test for 6593fb81261f25490ffddc2252a861c994234c2a ==> 220496f98de2ffce211109b8b55a245d6bdf8f5b passed
Test Ok

Copy link
Contributor

github-actions bot commented Jan 9, 2025

✅ Forge suite realistic_env_max_load success on 220496f98de2ffce211109b8b55a245d6bdf8f5b

two traffics test: inner traffic : committed: 14820.93 txn/s, latency: 2689.89 ms, (p50: 2600 ms, p70: 2700, p90: 3000 ms, p99: 9400 ms), latency samples: 5635200
two traffics test : committed: 99.98 txn/s, latency: 1612.62 ms, (p50: 1300 ms, p70: 1400, p90: 1700 ms, p99: 9600 ms), latency samples: 1860
Latency breakdown for phase 0: ["MempoolToBlockCreation: max: 1.507, avg: 1.315", "ConsensusProposalToOrdered: max: 0.290, avg: 0.287", "ConsensusOrderedToCommit: max: 0.304, avg: 0.291", "ConsensusProposalToCommit: max: 0.590, avg: 0.578"]
Max non-epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.53s no progress at version 1330 (avg 0.19s) [limit 15].
Max epoch-change gap was: 0 rounds at version 0 (avg 0.00) [limit 4], 0.56s no progress at version 2036600 (avg 0.54s) [limit 16].
Test Ok

@vgao1996 vgao1996 merged commit 3169527 into aptos-labs:main Jan 9, 2025
46 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants