Skip to content

Storage - Blob Stress Package Error Cleanup#49233

Draft
ibrandes wants to merge 7 commits into
Azure:mainfrom
ibrandes:storage/blobStressFixes
Draft

Storage - Blob Stress Package Error Cleanup#49233
ibrandes wants to merge 7 commits into
Azure:mainfrom
ibrandes:storage/blobStressFixes

Conversation

@ibrandes
Copy link
Copy Markdown
Member

No description provided.

@github-actions github-actions Bot added the Storage Storage Service (Queues, Blobs, Files) label May 20, 2026
@ibrandes ibrandes changed the title Storage/blob stress fixes Storage - Blob Stress Package Error Cleanup May 26, 2026
@ibrandes ibrandes requested a review from Copilot May 26, 2026 19:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Storage Blob stress test tooling to reduce error-prone behavior during retries/known-length uploads, align OpenTelemetry dependency versions, and improve stress environment setup (cert handling + storage endpoint generation).

Changes:

  • Updated CrcInputStream to return a lazy snapshot Mono<ContentInfo> instead of relying on EOF/sink signaling.
  • Adjusted OpenTelemetry runtime metrics registration (GC observers) and introduced opentelemetry-bom dependency management in stress modules.
  • Updated stress infra scripts/templates: generate/import a PEM cert for the fault injector with a readiness wait-loop; improved Bicep outputs for cloud suffix + unique storage account names.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
sdk/storage/azure-storage-stress/src/main/java/com/azure/storage/stress/TelemetryHelper.java Updates GC runtime-metrics observer registration to the newer API signature.
sdk/storage/azure-storage-stress/src/main/java/com/azure/storage/stress/CrcInputStream.java Replaces sink-based EOF signaling with lazy snapshot semantics for content info.
sdk/storage/azure-storage-stress/pom.xml Imports opentelemetry-bom to align io.opentelemetry dependency versions.
sdk/storage/azure-storage-blob-stress/templates/stress-test-job.yaml Switches fault injector cert generation/import to PEM and adds a wait loop before importing.
sdk/storage/azure-storage-blob-stress/stress-test-resources.bicep Uses environment storage suffix and unique storage account naming to avoid collisions.
sdk/storage/azure-storage-blob-stress/scripts/stress-run.sh Matches template behavior: waits for PEM cert then imports it into the JVM truststore.
sdk/storage/azure-storage-blob-stress/scripts/fault-injector.sh Exports PEM cert instead of PFX to support keytool trust import.
sdk/storage/azure-storage-blob-stress/pom.xml Imports opentelemetry-bom to align io.opentelemetry dependency versions.

Comment on lines +117 to +119
// duplicate() shares the underlying byte[] but gives the caller an independent
// position/limit so subsequent reads on this stream don't perturb the snapshot.
return new ContentInfo(crc.getValue(), length, head.duplicate());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Storage Storage Service (Queues, Blobs, Files)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants