Loading aws/sdk/integration-tests/s3/tests/concurrency.rs +7 −3 Original line number Diff line number Diff line Loading @@ -22,17 +22,21 @@ use tokio::sync::Semaphore; use tokio::time::{Duration, Instant}; use tracing::debug; const TASK_COUNT: usize = 10_000; // WARNING: // When testing this on your own computer, be sure to run the tests in several different terminals. // Depending on the terminal used, you may run into errors related to "Too many open files". const TASK_COUNT: usize = 1_000; // Larger requests take longer to send, which means we'll consume more network resources per // request, which means we can't support as many concurrent connections to S3. const TASK_PAYLOAD_LENGTH: usize = 10_000; const TASK_PAYLOAD_LENGTH: usize = 5_000; // At 130 and above, this test will fail with a `ConnectorError` from `hyper`. I've seen: // - ConnectorError { kind: Io, source: hyper::Error(Canceled, hyper::Error(Io, Os { code: 54, kind: ConnectionReset, message: "Connection reset by peer" })) } // - ConnectorError { kind: Io, source: hyper::Error(BodyWrite, Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }) } // These errors don't necessarily occur when actually running against S3 with concurrency levels // above 129. You can test it for yourself by running the // `test_concurrency_put_object_against_live` test that appears at the bottom of this file. const CONCURRENCY_LIMIT: usize = 129; const CONCURRENCY_LIMIT: usize = 50; #[tokio::test(flavor = "multi_thread")] async fn test_concurrency_on_multi_thread_against_dummy_server() { Loading Loading
aws/sdk/integration-tests/s3/tests/concurrency.rs +7 −3 Original line number Diff line number Diff line Loading @@ -22,17 +22,21 @@ use tokio::sync::Semaphore; use tokio::time::{Duration, Instant}; use tracing::debug; const TASK_COUNT: usize = 10_000; // WARNING: // When testing this on your own computer, be sure to run the tests in several different terminals. // Depending on the terminal used, you may run into errors related to "Too many open files". const TASK_COUNT: usize = 1_000; // Larger requests take longer to send, which means we'll consume more network resources per // request, which means we can't support as many concurrent connections to S3. const TASK_PAYLOAD_LENGTH: usize = 10_000; const TASK_PAYLOAD_LENGTH: usize = 5_000; // At 130 and above, this test will fail with a `ConnectorError` from `hyper`. I've seen: // - ConnectorError { kind: Io, source: hyper::Error(Canceled, hyper::Error(Io, Os { code: 54, kind: ConnectionReset, message: "Connection reset by peer" })) } // - ConnectorError { kind: Io, source: hyper::Error(BodyWrite, Os { code: 32, kind: BrokenPipe, message: "Broken pipe" }) } // These errors don't necessarily occur when actually running against S3 with concurrency levels // above 129. You can test it for yourself by running the // `test_concurrency_put_object_against_live` test that appears at the bottom of this file. const CONCURRENCY_LIMIT: usize = 129; const CONCURRENCY_LIMIT: usize = 50; #[tokio::test(flavor = "multi_thread")] async fn test_concurrency_on_multi_thread_against_dummy_server() { Loading