You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* The limit applies per client. If multiple clients created, limit will apply to each separately.
38
+
* The environment variable value must be a valid positive integer representing gigabytes (GiB).
39
+
* The value is converted from GiB to bytes internally (1 GiB = 1024³ bytes).
40
+
* Invalid values or overflow conditions will cause client creation to fail with `AWS_ERROR_INVALID_ARGUMENT`.
41
+
42
+
> [!TIP]
43
+
> You can also control memory limit *in bytes* using client config. The client config takes precedence over the environment variable (memory_limit_in_bytes needs to be set to a non-zero value).
2. **Maximum Parts Pending Read - `AWS_CRT_S3_MAX_PARTS_PENDING_READ`**
52
+
53
+
Controls the maximum number of parts that can be pending read from the input stream during an individual multipart upload. Higher values may improve upload throughput for large files by allowing more parts to be read in parallel, only if the disk read speed can benefit from more concurrent reading of parts.
54
+
55
+
Example Usage:
56
+
57
+
```bash
58
+
export AWS_CRT_S3_MAX_PARTS_PENDING_READ=20
38
59
```
39
60
40
-
**Priority**: The configuration value takes precedence over the environment variable. If `memory_limit_in_bytes` is set to a non-zero value in the config, the environment variable is ignored.
61
+
**Default Behavior**:
62
+
If not set, the default value is 5.
63
+
64
+
**Notes**:
65
+
* Only affects multipart uploads. Small files that fit in a single part are not affected.
66
+
* If there are multiple parallel multipart upload requests, each upload is limited by the value individually (not cumulatively).
67
+
* Setting this too low may introduce delays between reads, as the meta-request waits for the client to schedule more work.
68
+
* Setting this too high may cause a single upload to hog work tokens, starving other concurrent uploads.
69
+
* The value must be a positive integer (1–4294967295). Invalid or zero values are ignored with a warning, and the default is used.
70
+
* The value is read once on first use and cached for the lifetime of the process.
71
+
* If the network bandwidth of the device is too low, even a higher value of pending read might not be respected due to having maximum allowed requests in flight.
41
72
42
-
**Default Behavior**: If neither is set (config is 0 and environment variable is not set), the client sets a default memory limit based on the target throughput.
73
+
3.**Test Bucket - `CRT_S3_TEST_BUCKET_NAME`**
43
74
44
-
**Notes**:
45
-
* The limit applies per client. If multiple clients created, limit will apply to each separately.
46
-
* The environment variable value must be a valid positive integer representing gigabytes (GiB).
47
-
* The value is converted from GiB to bytes internally (1 GiB = 1024³ bytes).
48
-
* Invalid values or overflow conditions will cause client creation to fail with `AWS_ERROR_INVALID_ARGUMENT`.
75
+
The S3 bucket name used for running unit tests. See the [test_helper documentation](./tests/test_helper/) for setup instructions.
0 commit comments