awslabs / awslabs/aws-sdk-rust

16-second hang while establishing a transcribe streaming connection

Open
#1,401 24 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Rust
Stars
3.3k
Forks
290
Avg merge
1d 12h
Merged PRs (30d)
3

Description

Describe the bug

On a particular machine, Transcribe Streaming.StartStreamTranscription hangs for 16 seconds before finally succeeding (then AWS transcribe immediately times out because it hasn't received audio for more than 15 seconds)

Regression Issue
  • Select this option if this issue appears to be a regression.
Expected Behavior

I expect connection to be established in a timely fashion

Current Behavior

Connection establishment hangs for 16 seconds on running read_after_execution interceptors:

2026-01-27T06:40:35.945921Z DEBUG Transcribe Streaming.StartStreamTranscription{rpc.service="Transcribe Streaming" rpc.method="StartStreamTranscription" sdk_invocation_id=5764325 rpc.system="aws-api"}:try_op: aws_smithy_runtime::client::retries::strategy::standard: attempt #1 classified as NoActionIndicated, not retrying
2026-01-27T06:40:35.945927Z DEBUG Transcribe Streaming.StartStreamTranscription{rpc.service="Transcribe Streaming" rpc.method="StartStreamTranscription" sdk_invocation_id=5764325 rpc.system="aws-api"}:try_op: aws_smithy_runtime::client::orchestrator: a retry is either unnecessary or not possible, exiting attempt loop
2026-01-27T06:40:35.945939Z TRACE Transcribe Streaming.StartStreamTranscription{rpc.service="Transcribe Streaming" rpc.method="StartStreamTranscription" sdk_invocation_id=5764325 rpc.system="aws-api"}:finally_op: aws_smithy_runtime::client::interceptors: running `modify_before_completion` interceptors
2026-01-27T06:40:35.945948Z TRACE Transcribe Streaming.StartStreamTranscription{rpc.service="Transcribe Streaming" rpc.method="StartStreamTranscription" sdk_invocation_id=5764325 rpc.system="aws-api"}:finally_op: aws_smithy_runtime::client::interceptors: running `read_after_execution` interceptors
2026-01-27T06:40:51.956883Z TRACE Transcribe Streaming.StartStreamTranscription{rpc.service="Transcribe Streaming" rpc.method="StartStreamTranscription" sdk_invocation_id=5764325 rpc.system="aws-api"}:try_op:try_attempt{attempt=1}:Connection{peer=Client}:poll: h2::proto::connection: connection.state=Open
Reproduction Steps

This only reproduces on a single machine, and occurs using GStreamer's AWS transcriber when the connection builder is built:

https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/blob/main/net/aws/src/transcriber2/imp.rs?ref_type=heads#L773

I can probably turn this into a sample, but the issue most likely won't be reproducable everywhere

Possible Solution

I don't have an idea what might be causing this

Additional Information/Context

No response

Version
├── aws-config v1.8.12
│   ├── aws-credential-types v1.2.11
│   │   ├── aws-smithy-async v1.2.7
│   │   ├── aws-smithy-runtime-api v1.10.0
│   │   │   ├── aws-smithy-async v1.2.7 (*)
│   │   │   ├── aws-smithy-types v1.3.6
│   │   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-runtime v1.5.18
│   │   ├── aws-credential-types v1.2.11 (*)
│   │   ├── aws-sigv4 v1.3.7
│   │   │   ├── aws-credential-types v1.2.11 (*)
│   │   │   ├── aws-smithy-eventstream v0.60.14
│   │   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   │   ├── aws-smithy-http v0.62.6
│   │   │   │   ├── aws-smithy-eventstream v0.60.14 (*)
│   │   │   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-smithy-async v1.2.7 (*)
│   │   ├── aws-smithy-eventstream v0.60.14 (*)
│   │   ├── aws-smithy-http v0.62.6 (*)
│   │   ├── aws-smithy-runtime v1.9.8
│   │   │   ├── aws-smithy-async v1.2.7 (*)
│   │   │   ├── aws-smithy-http v0.62.6 (*)
│   │   │   ├── aws-smithy-http-client v1.1.5
│   │   │   │   ├── aws-smithy-async v1.2.7 (*)
│   │   │   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   │   ├── aws-smithy-observability v0.2.0
│   │   │   │   └── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   ├── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-types v1.3.11
│   │   │   ├── aws-credential-types v1.2.11 (*)
│   │   │   ├── aws-smithy-async v1.2.7 (*)
│   │   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   │   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-sdk-sts v1.96.0
│   │   ├── aws-credential-types v1.2.11 (*)
│   │   ├── aws-runtime v1.5.18 (*)
│   │   ├── aws-smithy-async v1.2.7 (*)
│   │   ├── aws-smithy-http v0.62.6 (*)
│   │   ├── aws-smithy-json v0.61.9
│   │   │   └── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-smithy-observability v0.2.0 (*)
│   │   ├── aws-smithy-query v0.60.9
│   │   │   ├── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-smithy-runtime v1.9.8 (*)
│   │   ├── aws-smithy-runtime-api v1.10.0 (*)
│   │   ├── aws-smithy-types v1.3.6 (*)
│   │   ├── aws-smithy-xml v0.60.13
│   │   ├── aws-types v1.3.11 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-credential-types v1.2.11 (*)
├── aws-sdk-polly v1.97.0
│   ├── aws-credential-types v1.2.11 (*)
│   ├── aws-runtime v1.5.18 (*)
│   ├── aws-sigv4 v1.3.7 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-observability v0.2.0 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-sdk-s3 v1.120.0
│   ├── aws-credential-types v1.2.11 (*)
│   ├── aws-runtime v1.5.18 (*)
│   ├── aws-sigv4 v1.3.7 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-checksums v0.63.13
│   │   ├── aws-smithy-http v0.62.6 (*)
│   │   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-smithy-eventstream v0.60.14 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-observability v0.2.0 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-smithy-xml v0.60.13 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-sdk-sso v1.92.0
│   ├── aws-credential-types v1.2.11 (*)
│   ├── aws-runtime v1.5.18 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-observability v0.2.0 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-sdk-sts v1.96.0 (*)
├── aws-sdk-transcribestreaming v1.96.0
│   ├── aws-credential-types v1.2.11 (*)
│   ├── aws-runtime v1.5.18 (*)
│   ├── aws-sigv4 v1.3.7 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-eventstream v0.60.14 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-observability v0.2.0 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-sdk-translate v1.92.0
│   ├── aws-credential-types v1.2.11 (*)
│   ├── aws-runtime v1.5.18 (*)
│   ├── aws-smithy-async v1.2.7 (*)
│   ├── aws-smithy-http v0.62.6 (*)
│   ├── aws-smithy-json v0.61.9 (*)
│   ├── aws-smithy-observability v0.2.0 (*)
│   ├── aws-smithy-runtime v1.9.8 (*)
│   ├── aws-smithy-runtime-api v1.10.0 (*)
│   ├── aws-smithy-types v1.3.6 (*)
│   ├── aws-types v1.3.11 (*)
├── aws-types v1.3.11 (*)
Environment details (OS name and version, etc.)

Fedora 43

Logs

I pasted some relevant logs above :)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with net/aws/src/transcriber2/imp.rs around the connection builder at line 773, then trace the Transcribe Streaming StartStreamTranscription call and its read_after_execution interceptors. Reproduce on the reported Fedora 43 machine while capturing the shown h2 and interceptor logs. Done means identifying whether the 16-second delay is in the SDK or the GStreamer integration and establishing a reproducible fix or narrowed cause.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, rust
Domain
api, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.